/*
 * 代号：凤凰
 * http://www.jphenix.org
 * 2022年9月2日
 * V4.0
 */
package jakarta.servlet;

import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Enumeration;
import java.util.EventListener;
import java.util.Set;

/**
 * 【假类】用于辅助框架包编译通过
 * 
 * 2024-08-16 按照Tomcat10.1.19构建的假类
 * 
 * @author MBG
 * 2022年9月2日
 */
public interface ServletContext {


	String TEMPDIR      = "";
	String ORDERED_LIBS = "";
	String getContextPath();
	ServletContext getContext(String uripath);
	int getMajorVersion();
	int getMinorVersion();
	int getEffectiveMajorVersion();
	int getEffectiveMinorVersion();
	String getMimeType(String file);
	Set<String> getResourcePaths(String path);
	URL getResource(String path) throws MalformedURLException;
	InputStream getResourceAsStream(String path);
	void log(String msg);
	void log(String message, Throwable throwable);
	String getRealPath(String path);
	String getServerInfo();
	String getInitParameter(String key);
	Enumeration<String> getInitParameterNames();
	boolean setInitParameter(String key, String value);
	Object getAttribute(String key);
	Enumeration<String> getAttributeNames();
	void setAttribute(String key, Object value);
	void removeAttribute(String key);
	String getServletContextName();
	SessionCookieConfig getSessionCookieConfig();
	void addListener(String className);
	<T extends EventListener> void addListener(T t);
	void addListener(Class<? extends EventListener> listenerClass);
	<T extends EventListener> T createListener(Class<T> listenerClass) throws ServletException;
	ClassLoader getClassLoader();
	String getVirtualServerName();
	int getSessionTimeout();
	void setSessionTimeout(int sessionTimeout);
	String getRequestCharacterEncoding();
	void setRequestCharacterEncoding(String encoding);
	String getResponseCharacterEncoding();
	void setResponseCharacterEncoding(String encoding);
}
